package com.sf.fy.uav.order.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * <p>
 *
 * </p>
 *
 * @author LTQ
 * @since 2023-05-08
 */
@TableName("order_info")
@ApiModel(value = "OrderInfo对象", description = "")
public class OrderInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    private String id;

    @ApiModelProperty("费用明细id")
    private String expenseDetailsId;
    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("更新时间")
    private Date updateTime;

    @ApiModelProperty("下单用户id")
    private String userId;

    @ApiModelProperty("实际支付金额")
    private BigDecimal pricePaid;

    @ApiModelProperty("收件人详细地址")
    private String receiverAddr;

    @ApiModelProperty("收件人地址纬度")
    private String receiverLat;

    @ApiModelProperty("收件人地址经度")
    private String receiverLon;

    @ApiModelProperty("收件人姓名")
    private String receiverName;

    @ApiModelProperty("收件人电话")
    private String receiverTel;

    @ApiModelProperty("寄件人详细地址")
    private String senderAddr;

    @ApiModelProperty("寄件人地址纬度")
    private String senderLat;

    @ApiModelProperty("寄件人地址经度")
    private String senderLon;

    @ApiModelProperty("寄件人姓名")
    private String senderName;

    @ApiModelProperty("寄件人电话")
    private String senderTel;

    @ApiModelProperty("备注")
    private String remark;


    @ApiModelProperty("货品重量")
    private double goodsWeight;

    @ApiModelProperty("订单状态 0 待揽件/1 待派件/2 (预留）/3 （预留）/4 已完成/5 异常")
    private Integer orderStatus;

    //这个字段可以去除了
//    @ApiModelProperty("支付状态")
//    private Integer payStatus;

    @ApiModelProperty("订单编号")
    private String tcWaybillNo;

    @ApiModelProperty("起飞场接驳点ID")
    private String takeoffConnId;

    @ApiModelProperty("过期时间")
    private Date expireTime;

    @ApiModelProperty("优惠券记录ID")
    private String userCouponId;

    @ApiModelProperty("订单类型,0同城，1跨城")
    private Byte orderType;

    /**
     * 记录payStatus变更的时间
     */
    @ApiModelProperty("交易时间")
    private Date transactionTime;

    public Byte getOrderType() {
        return orderType;
    }

    public void setOrderType(Byte orderType) {
        this.orderType = orderType;
    }

    @ApiModelProperty("记录向平台组下单时如果异常的异常信息,取消原因")
    private String wrongMsg;

    @ApiModelProperty("结算渠道")
    private String settleChannel;
    @ApiModelProperty("支付渠道，微信支付：'wxpay'")
    private String payChannel;
    @ApiModelProperty("渠道支付流水号")
    private String channelPayNo;
    @ApiModelProperty("顺手付支付流水号")
    private String sfpayPayNo;


    @ApiModelProperty("降落场接驳点ID")
    private String landingConnId;


    @ApiModelProperty("顺手付订单号")
    private String tradeNo;



    @ApiModelProperty("寄送地址名称")
    private String sendAddressName;

    @ApiModelProperty("收货地址名称")
    private String receiveAddressName;

    @ApiModelProperty("收件人区号")
    private String receiverAreaCode;

    @ApiModelProperty("货物类型id")
    private String goodsTypeId;

    @ApiModelProperty("平台：1:配送，2：景区；4:月结 5.CX")
    private Integer platformCode;

    @ApiModelProperty("寄送人区号")
    private String senderAreaCode;

    @ApiModelProperty("寄送人门牌号")
    private String senderDoorplate;

    @ApiModelProperty("收货人门牌号")
    private String receiverDoorplate;

    @ApiModelProperty("快递费")
    private BigDecimal expressFee;


    @ApiModelProperty("投放点id")
    private String placementPointId;

    @ApiModelProperty("第三方订单号")
    private String thirdPartyOrderNumber;

    public String getThirdPartyOrderNumber() {
        return thirdPartyOrderNumber;
    }

    public void setThirdPartyOrderNumber(String thirdPartyOrderNumber) {
        this.thirdPartyOrderNumber = thirdPartyOrderNumber;
    }

    public String getPlacementPointId() {
        return placementPointId;
    }

    public void setPlacementPointId(String placementPointId) {
        this.placementPointId = placementPointId;
    }

//    public Integer getPayStatus() {
//        return payStatus;
//    }
//
//    public void setPayStatus(Integer payStatus) {
//        this.payStatus = payStatus;
//    }

    public String getTradeNo() {
        return tradeNo;
    }

    public void setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
    }

    public BigDecimal getExpressFee() {
        return expressFee;
    }

    public void setExpressFee(BigDecimal expressFee) {
        this.expressFee = expressFee;
    }

    @ApiModelProperty("应付金额")
    private BigDecimal pricePayable;

    public Date getExpireTime() {
        return expireTime;
    }

    public void setExpireTime(Date expireTime) {
        this.expireTime = expireTime;
    }


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getReceiverAddr() {
        return receiverAddr;
    }

    public void setReceiverAddr(String receiverAddr) {
        this.receiverAddr = receiverAddr;
    }

    public String getReceiverLat() {
        return receiverLat;
    }

    public void setReceiverLat(String receiverLat) {
        this.receiverLat = receiverLat;
    }

    public String getReceiverLon() {
        return receiverLon;
    }

    public void setReceiverLon(String receiverLon) {
        this.receiverLon = receiverLon;
    }

    public String getReceiverName() {
        return receiverName;
    }

    public void setReceiverName(String receiverName) {
        this.receiverName = receiverName;
    }

    public String getReceiverTel() {
        return receiverTel;
    }

    public void setReceiverTel(String receiverTel) {
        this.receiverTel = receiverTel;
    }

    public String getSenderAddr() {
        return senderAddr;
    }

    public void setSenderAddr(String senderAddr) {
        this.senderAddr = senderAddr;
    }

    public String getSenderLat() {
        return senderLat;
    }

    public void setSenderLat(String senderLat) {
        this.senderLat = senderLat;
    }

    public String getSenderLon() {
        return senderLon;
    }

    public void setSenderLon(String senderLon) {
        this.senderLon = senderLon;
    }

    public String getSenderName() {
        return senderName;
    }

    public void setSenderName(String senderName) {
        this.senderName = senderName;
    }

    public BigDecimal getPricePaid() {
        return pricePaid;
    }

    public void setPricePaid(BigDecimal pricePaid) {
        this.pricePaid = pricePaid;
    }

    public String getSenderTel() {
        return senderTel;
    }

    public void setSenderTel(String senderTel) {
        this.senderTel = senderTel;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }


    public double getGoodsWeight() {
        return goodsWeight;
    }

    public void setGoodsWeight(double goodsWeight) {
        this.goodsWeight = goodsWeight;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getTcWaybillNo() {
        return tcWaybillNo;
    }

    public void setTcWaybillNo(String tcWaybillNo) {
        this.tcWaybillNo = tcWaybillNo;
    }

    public String getTakeoffConnId() {
        return takeoffConnId;
    }

    public void setTakeoffConnId(String takeoffConnId) {
        this.takeoffConnId = takeoffConnId;
    }


    public String getLandingConnId() {
        return landingConnId;
    }

    public void setLandingConnId(String landingConnId) {
        this.landingConnId = landingConnId;
    }


    public String getSendAddressName() {
        return sendAddressName;
    }

    public void setSendAddressName(String sendAddressName) {
        this.sendAddressName = sendAddressName;
    }

    public String getReceiveAddressName() {
        return receiveAddressName;
    }

    public void setReceiveAddressName(String receiveAddressName) {
        this.receiveAddressName = receiveAddressName;
    }


    public String getReceiverAreaCode() {
        return receiverAreaCode;
    }

    public void setReceiverAreaCode(String receiverAreaCode) {
        this.receiverAreaCode = receiverAreaCode;
    }

    public String getSenderAreaCode() {
        return senderAreaCode;
    }

    public void setSenderAreaCode(String senderAreaCode) {
        this.senderAreaCode = senderAreaCode;
    }

    public String getSenderDoorplate() {
        return senderDoorplate;
    }

    public void setSenderDoorplate(String senderDoorplate) {
        this.senderDoorplate = senderDoorplate;
    }

    public String getReceiverDoorplate() {
        return receiverDoorplate;
    }

    public void setReceiverDoorplate(String receiverDoorplate) {
        this.receiverDoorplate = receiverDoorplate;
    }


    public BigDecimal getPricePayable() {
        return pricePayable;
    }

    public void setPricePayable(BigDecimal pricePayable) {
        this.pricePayable = pricePayable;
    }

    public Integer getPlatformCode() {
        return platformCode;
    }

    public void setPlatformCode(Integer platformCode) {
        this.platformCode = platformCode;
    }

    public String getSettleChannel() {
        return settleChannel;
    }

    public void setSettleChannel(String settleChannel) {
        this.settleChannel = settleChannel;
    }

    public String getPayChannel() {
        return payChannel;
    }

    public void setPayChannel(String payChannel) {
        this.payChannel = payChannel;
    }

    public String getChannelPayNo() {
        return channelPayNo;
    }

    public void setChannelPayNo(String channelPayNo) {
        this.channelPayNo = channelPayNo;
    }

    public String getSfpayPayNo() {
        return sfpayPayNo;
    }

    public void setSfpayPayNo(String sfpayPayNo) {
        this.sfpayPayNo = sfpayPayNo;
    }

    public String getGoodsTypeId() {
        return goodsTypeId;
    }

    public void setGoodsTypeId(String goodsTypeId) {
        this.goodsTypeId = goodsTypeId;
    }

    public Date getTransactionTime() {
        return transactionTime;
    }

    public void setTransactionTime(Date transactionTime) {
        this.transactionTime = transactionTime;
    }

    public String getUserCouponId() {
        return userCouponId;
    }

    public void setUserCouponId(String userCouponId) {
        this.userCouponId = userCouponId;
    }

    public String getExpenseDetailsId() {
        return expenseDetailsId;
    }

    public void setExpenseDetailsId(String expenseDetailsId) {
        this.expenseDetailsId = expenseDetailsId;
    }


    public String getWrongMsg() {
        return wrongMsg;
    }

    public void setWrongMsg(String wrongMsg) {
        this.wrongMsg = wrongMsg;
    }
}
